import path from 'path';

// eslint 以及 prettier 文件
export const ESLINT_PRETTIER_PATH = path.resolve(
    __dirname,
    './package/eslintPrettier'
);
// husky 以及 lint-staged 文件
export const HUSKY_PATH = path.resolve(__dirname, './package/commitHooks');
// 依赖安装代理文件
export const DEPENDENCIES_PROXY = path.resolve(
    __dirname,
    './package/dependenciesProxy'
);
// 当发生冲突时，忽略的文件
export const IGNORE_COVER_FILE = [
    '.eslintrc',
    '.prettierignore',
    '.prettierrc',
    'tsconfig.json'
];
export const STANDARDIZATION_COMMAND = 'standardization:lint';
// husky 以及 lint-staged 依赖
export const HUSKY_AND_LINT_STAGED = {
    husky: '9.1.0',
    'lint-staged': '15.2.7'
};
// husky 以及 lint-staged 脚本命令
export const HUSKY_LINT_STAGED_SCRIPT = {
    prepare: 'husky',
    [STANDARDIZATION_COMMAND]: 'eslint src --ext .js,.jsx,.ts,.tsx'
};
// eslint 以及 prettier 约束配置
export const DEPENDENCIES = {
    devDependencies: {
        eslint: '8.57.0',
        prettier: '3.3.2',
        '@typescript-eslint/eslint-plugin': '7.16.0',
        '@typescript-eslint/parser': '7.16.0',
        'eslint-config-prettier': '9.1.0',
        'eslint-plugin-prettier': '5.1.3'
    },
    dependencies: {
        typescript: '5.5.3'
    }
};
// lint-staged 的依赖安装名称
export const LINT_STAGED_NAME = 'lint-staged.config.js';
